package com.woniuxy.service;

import com.woniuxy.entity.dto.DepartmentDTO;
import com.woniuxy.entity.dto.NormalOrderDTO;
import com.woniuxy.util.PageData;
import com.woniuxy.util.ResponseData;
import org.springframework.web.bind.annotation.RequestBody;

import javax.servlet.http.HttpServletResponse;
import java.text.ParseException;
import java.util.List;

public interface OrderService {
    ResponseData<?> queryCustomerOrder(PageData<NormalOrderDTO> pageData); //查询客户订单
    ResponseData<?> queryUserOrder(PageData<NormalOrderDTO> pageData); //查询用户订单
    ResponseData<?> queryBasicDetail(String id);//订单详情页面查询基本信息
    ResponseData<?> querySendDetail(String id);//订单详情页面查询发货信息
    ResponseData<?> queryDeliveryDetail(String id);//订单详情页面查询收货信息
    ResponseData<?> queryGoodsDetail(String id);//订单详情页面查询货物信息
    ResponseData<?> queryCostDetail(String id);//订单详情页面查询费用信息
    ResponseData<?> queryCustomer();//开单页面查询信息  做客户名称下拉框用
    ResponseData<?> queryGoods();//开单页面添加货物弹窗 查询全部货物信息
    ResponseData<?> queryGoods2(String id);//开单页面添加货物弹窗  添加后 主页面查询
    ResponseData<?> addGoods(List<NormalOrderDTO> normalOrderDTOS);
    ResponseData<?> createOrder(NormalOrderDTO normalOrderDTO) throws ParseException;//创建订单
    ResponseData<?> scheduling(NormalOrderDTO normalOrderDTO);//订单调度
    ResponseData<?> combinedOrder(@RequestBody List<NormalOrderDTO> normalOrderDTOS) throws ParseException;//合单
    ResponseData<?> splitOrder(@RequestBody NormalOrderDTO normalOrderDTO);//拆单
    ResponseData<?> cancelOrder(@RequestBody NormalOrderDTO normalOrderDTO);//取消订单
    ResponseData<?> batchCancelOrder(@RequestBody List<NormalOrderDTO> normalOrderDTOS);//批量取消订单
    ResponseData<?> exportYiData(HttpServletResponse response);//导出


}
